#ifndef ICOLLECTERSOURCEBRIDGE_H
#define ICOLLECTERSOURCEBRIDGE_H

#include <QList>
#include <QHash>
#include "CollectorItem.h"

class ISourceCollectorBridge {

public slots:
    virtual QHash<QString, CollectorItem*>* load() = 0;
    virtual void increasePlayCount(CollectorItem* item, int by = 1) = 0;
    virtual void addedToCollection(QList<CollectorItem*>& items,
                                   bool ignErr = true) = 0;
    virtual void addedToCollection(CollectorItem* item,
                                   bool ignErr = true) = 0;
    virtual void removedFromCollection(QList<CollectorItem*>& items,
                                       bool deleteAfterRemoval,
                                       bool ignErr = true) = 0;
    virtual void metaDataChanged(CollectorItem* item) = 0;
    virtual void colleactionCleared() = 0;
    virtual ~ISourceCollectorBridge() {
    }
};

#endif // ICOLLECTERSOURCEBRIDGE_H
